package com.ht.api.call.func.impl.fan;

import com.ht.api.bean.AjaxResult;
import com.ht.api.bean.LoginBean;
import com.ht.api.call.func.IFunctionCall;
import com.ht.api.db.Db;
import com.ht.api.db.Entity;
import com.ht.api.db.exception.HtException;

import cn.hutool.json.JSONObject;

/**
 * 渠道广告位的删除前置函数
 */
public class PositionChannelDelBeforeFunctionCall implements IFunctionCall{

	@Override
	public String getName() {
		return "渠道广告位的删除前置函数";
	}

	@Override
	public JSONObject execute(LoginBean me, JSONObject param, AjaxResult result) {
		Entity position = Db.createSqlParser("position_channel").findById(me.getDataSource(), param.getStr("main_id"));
		if (position.getInt("init_status") != 0) {//当广告位已经初始化之后，则不能删除
			throw new HtException("广告位已启用，只能停用，不能删除！");
		}

		Entity fanChannel = Entity.create("fan_channel");
		fanChannel.setMainId(position.getStr("channel_id"));
		fanChannel.set("position_cnt", -1);
		Db.insert(me.getDataSource(), fanChannel);

		return null;
	}

}
